package jp.tkym.labs.gwt.client;

import java.util.Date;

import jp.tkym.labs.gwt.client.gantt.GanttTableModelBuilder;
import jp.tkym.labs.gwt.shared.FieldVerifier;

import com.google.gwt.junit.client.GWTTestCase;
import com.google.gwt.user.datepicker.client.CalendarUtil;

/**
 * GWT JUnit <b>integration</b> tests must extend GWTTestCase. Using
 * <code>"GwtTest*"</code> naming pattern exclude them from running with
 * surefire during the test phase.
 */
public class GwtTestLabs extends GWTTestCase {

	/**
	 * Must refer to a valid module that sources this class.
	 */
	public String getModuleName() {
		return "jp.tkym.labs.gwt.LabsJUnit";
	}
	
	/**
	 * Tests the FieldVerifier.
	 */
	public void testFieldVerifier() {
		assertFalse(FieldVerifier.isValidName(null));
		assertFalse(FieldVerifier.isValidName(""));
		assertFalse(FieldVerifier.isValidName("a"));
		assertFalse(FieldVerifier.isValidName("ab"));
		assertFalse(FieldVerifier.isValidName("abc"));
		assertTrue(FieldVerifier.isValidName("abcd"));
	}

	public void testTableBindingCase001() {

		// FlexTableBinder binder = new FlexTableBinder(table);
		// binder.bind(new FlexTableCell(0, 0, new Label("h1"), 0, 2));
		// binder.bind(new FlexTableCell(0, 1, new Label("h1"), 0, 2));
		// System.out.println(table.asWidget().toString());
	}

	// /**
	// * This test will send a request to the server using the greetServer
	// method in
	// * GreetingService and verify the response.
	// */
	// public void testGreetingService() {
	// // Create the service that we will test.
	// GreetingServiceAsync greetingService = GWT.create(GreetingService.class);
	// ServiceDefTarget target = (ServiceDefTarget) greetingService;
	// target.setServiceEntryPoint(GWT.getModuleBaseURL() + "Labs/greet");
	//
	// // Since RPC calls are asynchronous, we will need to wait for a response
	// // after this test method returns. This line tells the test runner to
	// wait
	// // up to 10 seconds before timing out.
	// delayTestFinish(10000);
	//
	// // Send a request to the server.
	// greetingService.greetServer("GWT User", new AsyncCallback<String>() {
	// public void onFailure(Throwable caught) {
	// // The request resulted in an unexpected error.
	// fail("Request failure: " + caught.getMessage());
	// }
	//
	// public void onSuccess(String result) {
	// // Verify that the response is correct.
	// assertTrue(result.startsWith("Hello, GWT User!"));
	//
	// // Now that we have received a response, we need to tell the test runner
	// // that the test is complete. You must call finishTest() after an
	// // asynchronous test finishes successfully, or the test will time out.
	// finishTest();
	// }
	// });
	// }
	//

}
